package com.tvunetworks.center.user.annotation;

import com.tvunetworks.center.common.annotation.FetchType;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.PARAMETER)
public @interface Logined {


    /**
     * check 当前用户的状态，如果为 null 则直接抛异常
     *
     * true 检查
     *
     * false 不检查
     *
     * @return
     */
    boolean check() default true;

    /**
     *
     * 从哪里提取用户信息, 默认从 Cache 中获取，目前的 Cache 指的是 Redis
     *
     * @return
     */
    FetchType fetch() default FetchType.CACHE;


}
